﻿// Following Orders POJ - 1270.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://vjudge.net/problem/POJ-1270

有序是数学和计算机科学中的一个重要概念。例如，Zorn's Lemma 指出：
"一个部分有序集合中的每个链都有上界，其中包含一个最大元素： 一个部分有序集合中的每个链都有一个上界，其中包含一个最大元素。
在推理程序的定点语义时，有序也很重要。


这个问题既不涉及 Zorn 定点定理，也不涉及定点语义，但确实涉及顺序。
给定一系列形式为 x < y 的变量约束，你要编写一个程序，打印出所有与约束一致的变量排序。


例如，在 x < y 和 x < z 的约束条件下，有两种变量 x、y 和 z 的排序与这些约束条件一致：x y z 和 x z y。
输入
输入由一系列约束规范组成。一个规范由两行组成：一行是变量列表，下一行是约束条件列表。约束条件由一对变量组成，其中 x y 表示 x < y。


所有变量均为单字符小写字母。一个规范中至少有两个变量，最多不超过 20 个变量。
一个规范中至少有一个约束条件，最多不超过 50 个。
一个规范中至少有一个与约束条件一致的排序，最多不超过 300 个。


输入以文件结束为终止。
输出
对于每个约束规范，应打印与约束一致的所有排序。排序按词典（字母）顺序打印，每行一个。

不同约束规范的输出以空行隔开。

a b f g
a b b f
v w x y z
v y x v z v w v

abfg
abgf
agbf
gabf

wxzvy
wzxvy
xwzvy
xzwvy
zwxvy
zxwvy

*/
int main()
{
    std::cout << "Hello World!\n";
}
 